//记录：为什么getchar的返回值是int而不是char？
/*******************************************************************************************
1、为了能处理特殊状态EOF，当getchar读取数据的时候如果出错或者到达文件末尾了会返回EOF，这是一个宏，
   C标准规定了EOF的值是int类型，通常编译器将它定义为-1。如果将getchar的返回值定义为char类型，那么
   1个字节的char太小了，装不下4个字节的EOF，所以只能将它的返回值定义为更大类型的int。
*******************************************************************************************/


int main()
{   
    int ch;         //合法
    //char ch;      //非法

    while((ch=getchar()) != EOF)
    {
        putchar(ch);
    }

    return 0;
}